import type { InjectionKey, Ref } from "vue";

export type NativeType = string | number

export interface CollapseProps {
  modelValue: NativeType[];
  accordion?: boolean;
}
export interface CollapseItemProps {
  name: NativeType;
  title?: string;
  disabled?: boolean;
}

export interface CollapseContest {
  activeNames: Ref<NativeType[]>;
  handleItemClick: (name: NativeType) => void
}
export interface CollapseEmits{
  (e:'update:modelValue',values:NativeType[]):void;
  (e:'change',values:NativeType[]):void;
}
export const collapseContentKey: InjectionKey<CollapseContest> = Symbol('collapseContext')